package com.hualude.roadsign.service;

import com.hualude.roadsign.dto.DTRequestDto;
import com.hualude.roadsign.dto.DTResponseDto;
import com.hualude.roadsign.dto.LineFaultDto;

import java.util.List;

/**
 * Created by pjn on 2017/8/14.
 */
public interface RoadLineFaultService {
    /**
     * @Description: 获取故障datatable
     * @Author: pan-jianan
     * @Date: 2017/8/14 12:11
     */
    public DTResponseDto getRoadLineReportFault4DT(DTRequestDto dtRequestDto, Integer actorId, Integer userId, Integer orgId) throws Exception;

    /**
     * @Description: 更新故障
     * @Author: pan-jianan
     * @Date: 2017/8/14 12:11
     */
    public Integer updateRoadLineFault(Integer roadLineFaultId, Integer roadLineFaultLevel, Integer roadLineFaultType, String roadLineFaultPhoto, String roadLineFaultReason, Double roadLineMoney) throws Exception;

    /**
     * @Description: 删除故障
     * @Author: pan-jianan
     * @Date: 2017/8/14 12:11
     */
    public Integer deleteRoadLineFaultByIds(String roadLineFaultIds) throws Exception;


    /**
     * @Description: 上报
     * @Author: pan-jianan
     * @Date: 2017/8/14 17:06
     */
    public Integer reportRoadLineFault(Integer roadLineId, Integer roadLineFaultCreatorId, Integer roadLineFaultLevel, Integer roadLineFaultType,
                                          String roadLineFaultPhoto, String roadLineFaultReason, Double roadLineMoney, Integer roadLineOrgId, Integer roadLineMainOrgId) throws Exception;

    /**
     * @Description: 判断是否标线可上报：1可以，0不行
     * @Author: pan-jianan
     * @Date: 2017/8/14 17:06
     */
    public Integer getRoadLineFaultIsReport(Integer roadLineId) throws Exception;

    /**
     * @Description: 标线DT4故障上报
     * @Author: jiang-weirong
     * @Date: 2017/8/14 17:59
     */
    public DTResponseDto getRoadLineFaultReport4DT(DTRequestDto dtRequestDto, Integer actorId, Integer orgId, String roadName, String startRoad, String endRoad) throws Exception;

    /**
     * @Description: 获取第一个路名
     * @Author: pan-jianan
     * @Date: 2017/8/11 17:20
     */
    public List<String> getStartRoad(String roadName, Integer actorId, Integer orgId) throws Exception;

    /**
     * @Description: 根据第一个获取第二个路名
     * @Author: pan-jianan
     * @Date: 2017/8/11 17:20
     */
    public List<String> getSectionByStartRoad(String roadName, Integer actorId, Integer orgId) throws Exception;

    /**
     * @Description: 获取坐标以及图片
     * @Author: jiang-weirong
     * @Date: 2017/8/25 19:59
     */
    public List<LineFaultDto> getRoadLineCoordinates4AppMap(Integer orgId, Integer orgType, Integer actorId) throws Exception;
}
